/**
 * @param {number[]} gas
 * @param {number[]} cost
 * @return {number}
 */
// var canCompleteCircuit = function (gas, costs) {
//   let totalGas = 0;
//   for (let i = 0; i < gas.length; i++) {
//     totalGas = totalGas - cost[i] + gas[i];
//   }

//   if (totalGas < 0) { // 判断总油量
//     return -1;
//   }

//   for (let i = 0; i < gas.length; i++) {
//     let store = 0
//     for (let j = i; j < i + gas.length; j++) {
//       let cur = j % (gas.length)
//       if (store + gas[cur] - costs[cur] < 0) {
//         store = -1
//         break
//       }
//       store = (store + gas[cur] - costs[cur])
//     }
//     if (store >= 0) return i
//   }
//   return -1
// };


// var canCompleteCircuit = function (gas, cost) {
//   let totalGas = 0;
//   let currentGas = 0;
//   let start = 0;
//   for (let i = 0; i < gas.length; i++) {
//     totalGas = totalGas - cost[i] + gas[i];
//   }

//   if (totalGas < 0) { // 判断总油量
//     return -1;
//   }

//   for (let i = 0; i < gas.length; i++) {
//     currentGas = currentGas - cost[i] + gas[i];
//     if (currentGas < 0) {
//       currentGas = 0;
//       start = i + 1;
//     }
//   }

//   return start;
// };


gas = [1, 2, 3, 4, 5]
// gas = [2, 3, 4], cost = [3, 4, 3]
cost = [3, 4, 5, 1, 2]
console.log(canCompleteCircuit(gas, cost));